/*
 * Copyright (C), 2013, 上海汽车集团股份有限公司
 * FileName: HashTableRoute.java
 * Author:   12010065
 * Date:     2013年10月9日 下午2:03:55
 * Description: //模块目的、功能描述
 * History: //修改记录
 * <author>      <time>      <version>    <desc>
 * 修改人姓名             修改时间            版本号                  描述
 */
package com.ibm.framework.dal.route.table.support;

/**
 * 
 * 分表Hash策略实现
 * 
 * @author 12010065
 */
@Deprecated
public class HashTableRoute implements ITableRouteExt {
    /**
     * 分表哈希路由方法
     * 
     * @param mainTable 主表
     * @param paramValue 分表参数
     * @param tableNum 表个数
     * @return 主表
     */
    @Override
    public String route(String mainTable, Object paramValue, Integer tableNum) {
        if (tableNum != null && paramValue != null) {
            /** 哈希值与表编号取余 */
            int mod = paramValue.hashCode() % tableNum;
            return mainTable + mod;
        }
        return mainTable;
    }
}
